home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-02-05 | 6.5 KB | 129 lines | [TEXT/QED1] |
-
-
- GNU Chess: Experiences Learned
- with Communal Sharing
- by Stuart Cracraft
- (and contributors to the GNU Project)
-
-
- Limited sharing has characterized the computer chess community
- for the past two decades. Occasional research articles give hints
- and suggestions for useful features, but rarely reveal the real
- details of the critically important advances. We will here
- describe an effort underway (titled "GNU Chess") to create a more
- open and friendly environment of sharing.
-
- GNU Chess is part of Project GNU, a large-scale effort in which
- the philosophical goals are far-reaching. We will not go into any
- great depth about these goals as they relate to the larger pro-
- ject, because these are described elsewhere [1]. However, we will
- mention the basic issues and the changes we hope to encourage.
-
- The start of the GNU Chess project was a natural result of the
- experiences gleaned in writing a chess program. While the author
- was at a progressive academic location [2], he was able to con-
- ceive the idea of a communal chess program only after much heart-
- ache. During the period of writing the initial version (which
- has since undergone many improvements and whole revisions), it
- became clear that the best features and most useful hints, the
- very best of the heuristics, were hidden and difficult to find in
- the literature.
-
- Sprinkled across many books, research papers, magazine articles,
- accumulated in the community, during the past 25 years, there was
- literally a void of true, empirical programs. Locating usable
- programs was difficult. Many programs were the result of academic
- work in "ivory towers", and hence were inaccessible to the common
- man. Other programs were sequestered in research think-tanks. Na-
- turally, developers of commercial programs carefully guarded
- their source in order to protect their investment. On the other
- hand, a few chess program source listings had actually been pub-
- lished, but these were not really very strong, often written in a
- non-general language, and frequently more pedantic than practi-
- cal.
-
- The idea of a reasonably strong communal program solidified.
- When we refer to a communal program, we do not regard this as
- public-domain software. Rather, we refer to a program which is
- under the shared authority of a number of individuals, the prin-
- cipal contributors. These individuals have experienced and real-
- ized the positive results of a sharing community and the rapid
- improvements that come through contributing in such a community.
- Further, these individuals devote time and energy to coordinating
- the contributions of other individuals. While they exercise a
- certain editorial right, this is usually not exercised arbitrari-
- ly; instead, a discussion is often undertaken.
-
- Eventually, a working C program that played chess was available.
- The coordinating institution for Project GNU, accepted our
- suggestion of inclusion of a chess program in the GNU distribu-
- tion. Initial distribution of GNU Chess commenced in October of
- 1986. Interest in the project increased rapidly.
-
- Contributions came in from many places and people. Interfaces to
- X-windows and SUN-windows were donated, thus allowing very fancy
- chess fonts on bit-mapped screens. Also, contributions involving
- large portions of opening books such as MCO and collections of
- master games were added to the distribution. Additionally,
- tree-search modifications and heuristics were provided, and occa-
- sionally even entire rewrites.
-
- The program advanced in strength by several USCF class intervals
- during a period of less than one year. During this time, many
- unusual features and enhancements were added to the program, usu-
- ally under the coordination of two or more people, with one work-
- ing in a distant-advisory capacity to the other. Frequently, gra-
- duate students would give up significant time from their thesis
- work to devote energy to contributing. Their corporate counter-
- parts would often give up project time to make their donation.
-
- Contributors would often enter the project in a very forceful way
- and then having made their contribution, learn the viability of
- communal sharing once others had stepped in and contributed to
- them, thus providing considerable reinforcement. Frequently, con-
- tributors would then go into "hibernation" for a long period of
- time, but most of them remained open to contributing and were
- helpful when asked to reprogram their particular contribution in
- a more recent version.
-
- GNU Chess has made great strides in relatively little time. It
- has run on many different hardware architectures and has been
- compiled by a number of C compilers. A sampling of the com-
- puters on which the program has run is: National 32032, Vax
- 11/750, 8550, 8600, 8650, Motorola 68020, CCI 5/32, CCI 6/32
- (tahoe), Cray XMP, SUN Sparc-1.
-
- It is our belief that GNU Chess will stimulate graduate research
- in computer chess theory and practice. When students are able to
- easily obtain a state-of-the-art program in order to test out
- their ideas, they will no longer need to reinvent the wheel. The
- students will be able to investigate their research areas much
- more thoroughly, because they will spend more time on the specif-
- ic research areas they are concerned about. Basically, GNU Chess
- "frees up" time in order to get on to more fundamental issues.
-
- We also feel that as other researchers gain trust in the GNU
- Chess project, they will be more likely to release their results
- directly and rapidly, through journal articles, or directly to
- the GNU project, and in fact become contributors and join the
- present list. At the very least, a communal, ever-growing
- program will encourage the few "closeted" researchers to be some-
- what more open in their approach to disseminating advances.
-
- In whatever form it takes, the progress toward elaboration of
- machine chess is ongoing, and we hope that GNU chess will be
- helpful to the community. Copies of GNU Chess source and "book",
- as well as additional experimental code are available from the
- Free Software Foundation [3] or the author [6].
-
-
- [1] The GNU Manifesto, Richard Stallman, Free Software Foundation, Inc.
-
- [2] University of Southern California, Information Sciences Institute.
-
- [3] Free Software Foundation, Inc. 675 Massachusetts Ave.,
- Cambridge MA 02139.
-
- [4] Stuart Cracraft, P.O. Box 2841, Laguna Hills, California.
- 92654-2841., cracraft@wheaties.ai.mit.edu.
-